Semantic code browsing
نویسندگان
چکیده
Programmers currently enjoy access to a very high number of code repositories and libraries of ever increasing size. The ensuing potential for reuse is however hampered by the fact that searching within all this code becomes an increasingly difficult task. Most code search engines are based on syntactic techniques such as signature matching or keyword extraction. However, these techniques are inaccurate (because they basically rely on documentation) and at the same time do not offer very expressive code query languages. We propose a novel approach that focuses on querying for semantic characteristics of code obtained automatically from the code itself. Program units are pre-processed using static analysis techniques, based on abstract interpretation, obtaining safe semantic approximations. A novel, assertion-based code query language is used to express desired semantic characteristics of the code as partial specifications. Relevant code is found by comparing such partial specifications with the inferred semantics for program elements. Our approach is fully automatic and does not rely on user annotations or documentation. It is more powerful and flexible than signature matching because it is parametric on the abstract domain and properties, and does not require type definitions. Also, it reasons with relations between properties, such as implication and abstraction, rather than just equality. It is also more resilient to syntactic code differences. We describe the approach and report on a prototype implementation within the Ciao system.
منابع مشابه
WYSIWYQ - What You See Is What You Query
Existing Linked Data browsing user interfaces (UIs) allow users who are not familiar with Semantic Web technologies to explore interlinked datasets by generating SPARQL queries behind the scenes. This is analogous to the well-known WYSIWYG (What You See Is What You Get) paradigm, which generates the required markup in the background based on the user interactions. Nonetheless, and contrarily to...
متن کاملSemantic Identification Attacks on Web Browsing
We introduce a Semantic Identification Attack, in which an adversary uses semantic signals about the pages visited in one browsing session to identify other browsing sessions launched by the same user. This attack allows an adversary to determine if two browsing sessions originate from the same user regardless of any measures taken by the user to disguise their browser or network. We use the MS...
متن کاملSemWeB: A Semantic Web Browser for Supporting the Browsing of Users Using Semantic and Adaptive Links
Web browsing is a complex activity and in general, users are not guided during browsing. The aim of this research is to support the browsing of users using semantic and adaptive hyperlinks using Semantic Web technologies and personalization methods. In this paper, we propose a novel Semantic Web browser (SemWeB), which uses a behavior-based and an ontology-driven user modeling architecture. In ...
متن کاملSocial Semantic Search and Browsing
Vast information sources like the Internet are very hard to browse or search, and using existing tools might be sometimes frustrating for many people. A number of techniques has been proposed to deliver user-oriented solutions. In this paper we present how query refinement, collaborative filtering and faceted browsing can be enriched with social networking and semantic web technologies, and bro...
متن کاملInteractively using Semantic Web knowledge: Creating scalable abstractions with FacetOntology
The amount of knowledge accessible on the Semantic Web is growing, and there is a need for a scalable solution to facilitate exploring that data. Currently approaches to exploring Semantic Web data either focus on exploring resources individually, following links during exploration, and making little use of collated data, or take the approach of collating and aligning multiple sources into one ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- TPLP
دوره 16 شماره
صفحات -
تاریخ انتشار 2016